// pages/sys/mine/mine.js
const app = getApp() // 获取应用实例
const util = require('../../../utils/util.js')
import { getCustPhone } from '../../../utils/http/api'

Page({
    data: {
        motto: '你好，欢迎使用!',
        userInfo: {},
        hasUserInfo: false,
        canIUse: wx.canIUse('button.open-type.getUserInfo'),

        // 是否已登录
        isLogin: false,
        // 用户信息
        user: {
            name: '您未登录', phone: '点击此处去登录', id: '',
        },
    },

    //事件处理函数
    bindViewTap: function () {
        // wx.navigateTo({
        //   url: '../logs/logs'
        // })
        wx.showToast({ title: 'hello', })
    },

    getUserInfo: function (e) {
        console.log(e)
        app.globalData.userInfo = e.detail.userInfo
        this.setData({
            userInfo: e.detail.userInfo,
            hasUserInfo: true
        })
    },

    // 点击查看我的房间
    onCheckMyRoom() {
        if (util.isNull(app.gl.token)) {
            util.navigateTo('/pages/sys/login/login')
            wx.showToast({ title: '请先登录', icon: 'none', })
        } else {
            util.navigateTo('/pages/charge/house/my_house/my_house')
        }
    },

    // 点击缴费记录
    onCheckMoneyRecord() {
        if (util.isNull(app.gl.token)) {
            util.navigateTo('/pages/sys/login/login')
            wx.showToast({ title: '请先登录', icon: 'none', })
        } else {
            util.navigateTo('/pages/charge/c_record/c_record')
        }
    },

    // 点击物业报修
    onCheckRepair() {
        if (util.isNull(app.gl.token)) {
            util.navigateTo('/pages/sys/login/login')
            wx.showToast({ title: '请先登录', icon: 'none', })
        } else {
            util.navigateTo('/pages/sys/repair/repair')
        }
    },

    // 点击查看电话
    onCheckPhone() {
        this.reqCustPhone()
    },

    // 点击关于
    onCheckAbout() {
        wx.showToast({ title: '欢迎使用物业小程序', icon: 'none' })
    },

    // 点击退出 
    onLogout: function () {
        let that = this
        let user0 = this.data.user

        if (this.data.isLogin) {// 当前已经登录
            wx.showModal({
                title: '提示',
                content: '是否退出登录？',
                success(res) {
                    if (res.confirm) {// 点击确定,退出登录
                        user0 = {
                            name: '您未登录', phone: '点击此处去登录', id: '',
                        }
                        that.setData({ isLogin: false, user: user0 })
                        app.gl.token = ''
                        wx.setStorageSync('token', '')
                    } else if (res.cancel) {// 点击取消，不退出登录
                        // wx.showToast({ title: '已取消', icon: 'none', })
                    }
                }
            })
        } else {// 当前未登录
            that.onLogin()// 跳转到登录页面
        }
    },

    // 点击登录
    onLogin() {
        if (!this.data.isLogin) {
            util.navigateTo('/pages/sys/login/login')
        }
    },

    // 生命周期函数--监听页面加载
    onLoad: function () {
        let token = wx.getStorageSync('token')
        if (util.isNull(token)) {// 本地存储的token为空，未登录，直接返回
            this.setData({ isLogin: false })
            let user0 = {
                name: '您未登录',
                phone: '点击此处去登录',
                id: '',
            }
            this.setData({
                isLogin: false,
                user: user0
            })
            return
        }
        this.setData({ isLogin: true })
        app.gl.token = token// 为全局变量设置token
        let mobile = wx.getStorageSync('mobile')
        let id = wx.getStorageSync('id')
        console.log('mobile = ' + mobile + ' id = ' + id + ' token = ' + token)
        this.setData({ user: { name: '用户' + mobile, phone: mobile, id: id, } })
    },

    // 请求物业电话
    async reqCustPhone() {
        wx.showLoading({ title: '处理中', mask: true, })
        // let token = util.isLogin()
        let { code, msg, data } = await getCustPhone({})
        console.log(`reqCustPhone...code=${code},msg=${msg},data=`, data)
        wx.hideLoading({})
        if (code == '1') {
            wx.showModal({
                title: '提示', content: '是否拨打物业电话：\n' + data,
                success: function (res) {
                    if (res.confirm) {
                        wx.makePhoneCall({ phoneNumber: data, })
                    }
                },
            })
        } else {
            wx.showToast({ title: msg, icon: 'error' })
        }
    },

})